public static void Set(
this DicomDataSet ds,
DicomElement parent,
object[] instances
)
[ExtensionAttribute()]
public:
static void Set(
DicomDataSet^ ds,
DicomElement^ parent,
... array<Object^>^ instances
)
ds
The data set to set information into.
parent
The parent DicomElement where to start setting the information in the DicomDataSet
instances
The instances that have the correct attributes.
Instances have to be defined with the correct ElementAttribute. Any properties not defined with this attribute will be ignored.
using Leadtools.Dicom.Common.DataTypes;
using Leadtools.Dicom.Common.Extensions;
using Leadtools.Dicom;
using Leadtools.Dicom.Common.Editing.Converters;
using Leadtools.Dicom.Common.Editing;
public class MyPatientInfo
{
private PersonName _PatientName;
[Element(DicomTag.PatientName, Optional = true)]
[TypeConverter(typeof(PersonNameConverter))]
public PersonName PatientName
{
get { return _PatientName; }
set { _PatientName = value; }
}
private string _PatientID;
[Element(DicomTag.PatientID, Optional = false)]
public string PatientID
{
get { return _PatientID; }
set { _PatientID = value; }
}
}
public void ExtractInfoExample()
{
string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "image2.dcm");
MyPatientInfo info = null;
// Initialize DICOM engine
DicomEngine.Startup();
DicomDataSet ds = new DicomDataSet();
// Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None);
// Fill the class with the appropriate DICOM info
info = ds.Get<MyPatientInfo>();
if (info != null)
{
//
// Display information extracted from DICOM file.
//
Console.WriteLine("Patient Name: " + info.PatientName.Full);
Console.WriteLine("Patient ID: " + info.PatientID);
//
// Change the patient id
//
info.PatientID = "12345";
ds.Set(info);
if (ds.GetValue<string>(DicomTag.PatientID, string.Empty) == "12345")
Console.WriteLine("Patient successfully changed");
}
DicomEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document